package com.hand.lwf24378.materials.mapper;

import com.hand.lwf24378.materials.domain.Materials;
import com.hand.lwf24378.materials.dto.SelectOrderHelper;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * @author : WaveLee
 * @date : 2019/7/19 15:10
 * @description :
 */
@Repository
public interface MaterialsMapper {
    /**
     * 添加物料
     * @param materials
     * @return
     */
    void add(Materials materials);

    /**
     * 更新物料
     * @param materials
     * @return
     */
    void update(Materials materials);

    /**
     * 根据id获取
     * @param itemId
     * @return
     */
    Materials getById(Long itemId);

    /**
     * 根据编码获取
     * @param code
     * @return
     */
    Materials getByCode(String code);

    /**
     * 获取最大编码
     * @return
     */
    String getMaxCode();

    /**
     * 根据Id删除
     * @param itemId
     */
    void delete(Long itemId);

    /**
     * 批量删除
     * @param itemIds
     */
    void deleteInBatch(Long[] itemIds);

    /**
     * 获取所有
     * @return
     */
    List<Materials> getAll();

    /**
     * 条件查询
     * @param selectOrderHelper
     * @return
     */
    List<Materials> selectItem(SelectOrderHelper selectOrderHelper);
}
